1. Field of the Invention
The present invention relates to control of an image processing device which executes an image processing function to a request from an application.
2. Description of the Related Art
In recent years, a digital multifunction device based on a digital copying machine and having a scan function, a printer function and a network transmission/reception function has been in practical use, and an image processing device such as the digital multifunction device of this type has been increasingly sophisticated. More specifically, the image processing device may not only execute copying of a paper original but also store image data as a file in a database provided in a hard disk thereof. Moreover, a function of transmitting image data by various network protocols has been in practical use. More specifically, the image processing device may transmit the file stored in the database thereof by an E-mail onto a network.
In this connection, the above functions of the digital multifunction device are often combined with an information processing system of an existing customer so as to improve customer's business.
To cope wish such an environment, an environment that an individual application can be added to the digital multifunction device has been manufactured.
For example, an image database system is constructed by operating, on the multifunction device, an application which uses the image scan function and an image format conversion function of the digital multifunction device, and cooperating the multifunction device with the database on the information processing system.
On the other hand, it should be noted that various kinds of image processing devices exist in a customer's office, and functions and restrictions of the respective image processing devices are different from others.
For example, if the two image processing devices were manufactured by an identical manufacturer but types thereof are different from each other, usable functions for the respective image processing devices may be different, whereby there is a possibility that processing procedures of the respective image processing devices are restricted. In such a case, it is necessary to provide the plural applications with respect to each of plural kinds of image processes.
To cope with such a problem, a technique of abstracting the functions of the image processing device and absorbing differences due to kinds of devices from the application has been proposed in Japanese Patent Application Laid-Open No. 2000-222335.
By the above technique, it is possible to make software for providing a copy function applicable to any free combination of scanners and printers of different manufacturers. In other words, it is possible by virtualizing the differences in the devices to provide an environment in which application software can be easily developed.
On the other hand, since performance of a recent image processing device remarkably increases, the functions of the image processing device to be used by the application software increases. For example, a recent printer can normally execute a complicated book binding process, a process of merging plural pages into one page, and the like.
However, if kinds of functions increase like this, a restriction occurs on combinations of the functions. For example, a page serial copy function for dividing one-page original into plural outputs and a reduction layout function for merging an original of plural pages into a one-page output cannot be designated simultaneously.
Further, there is a fact that a certain kind of function cannot be used according to a condition of hardware. For example, when there is no staple in a stapler, it is necessary to preclude a user from executing a stapling process to output papers. That is, it is impossible by only virtualizing the differences in the devices to cope with such a device-dependent restriction.
Furthermore, it is difficult for a person who is an application software developer but is not an engineer of a device manufacturer to effectively and satisfactorily design actual application software.